#ifndef XPM_DOC_MODEL_RDF_CLASS_H
#define XPM_DOC_MODEL_RDF_CLASS_H

#include <string>
#include <vector>

using namespace std;

namespace xpm {
	class Slot;
	class Instance;
	enum Role{
			Concrete,
			Abstract
		};
	class Cls {
	public:		
		Cls(string name, Cls* superCls);
		void addDirectTempleteSlot(Slot* slot);
		string name();
		Cls* superCls();
		vector<Slot*>& directTempleteSlots();
	private:
		string _name;
		Cls* _superCls;
		vector<Slot*> _directTempleteSlots;
		string _displaySlot;
		string _documentation;
		Role _role;
	};
}
#endif